public class ReadMe {
    /**
     * 2023-3-20 Java基础
     * 1.理解B/S和C/S的区别？
     * 2.jdk8以后的版本没有jre，jre已经集成到jdk里面了
     * 3.以后创建类的时候，不允许直接创建类，而应该先创建包
     * 4.创建包一般规则：com.wanxi.model.HelloWorld
     *      国际.国内.公司.模块.类名
     *      包，全部用小写，如果有多个单词，则用.
     * 5.创建类的时候，应该用大驼峰命名规则
     *      大驼峰：如果有几个单词，则每个单词第一个字母大写UserName(类名)
     *      小驼峰：如果有几个单词，则第一个字母小写，后面每个单词字母大写 userName
     *      全大写：有多个单词则用下划线  USER_NAME(常量)
     *      全小写：包名,项目名
     * 6.注释：解释，不用于执行代码
     *      1）单行注释：//
     *      2）多行注释  解释多行代码
     *      3）文本注释  多用于对类和属性和方法的注释
     *  7.关键字
     *  Java里面一般对关键字有特色颜色表示
     *  Java关键字全部小写
     *  Java关键字不允许别人使用
     *  8.Java 字符和字符串
     *     字符 一个  字符串 多个字符连接起来
     * 9.数据类型  变量名=数据值；
     *  int  a=222；  变量
     *  int 数据类型
     *  a   标识符
     *  = 赋值运算符
     *  222 字面量
     * 10.以后项目里面不允许用run进行测试，最好全部用debug
     * 11.变量命名的时候，如果再方法内，要使用当前变量，则必须赋初始值
     * 12.变量的使用范围，只能再当前的{}里面使用
     * 13.标识符可以理解为你为别人起的名字
     * 14.java的数据类型分类？基本数据类型和引用数据类型
     * 15.数据类型 可以理解为容器：装东西的器具
     *          byte  字节
     *          short 短整型
     *          int 整型
     *          long  长整型
     *          float  单精度
     *          double  双精度
     *          boolean 布尔
     *          char  字符
     * 16.字符串拼接：+ 连接
     * 17.idea 快捷键
     *      ctrl+d 复制一行 复制多行
     *      ctrl+c
     *      ctrl+v
     *      ctrl+z 撤销
     *      ctrl+y 回退/反撤销
     *      ctrl+shift+u 大小写转换
     *      ctrl+？ 注释
     *      ctrl+alt+l 代码格式化自动对齐
     *      ctrl+n  全局查询
     *      win+d 回到桌面
     *      win+e 打开资源文件
     *      win+r  打开dos命令
     *      ctrl+r 查询当前类
     * 18.一般情况下，如果引入别人的类，需要导入别人的包
     * 19.一般情况下，java.lang下面的类可以省略包
     * -----------------------------------------------------------------
     * 1.计算机软硬件
     * 2.jdk，jre，jvm
     * 3.编译HelloWorld.java文件
     * 4.dos命令
     * 5.idea安装下载
     * 6.变量
     * 7.字面量
     * 8.标识符
     * 9.数据类型
     * 10.键盘输入
     *
     */
    /**
     * 2023-3-21 运算符
     * 1.下载安装git
     * 2.打开idea项目，选择最上方的VCS，选择创建Git 仓库--》选择自己的项目，点击ok
     * 3.选择需要上传的项目，点击右键，选择git--》add
     * 4.选择右上角的绿色的√，或者点击git--》commit进行提交
     * 5.输入提交的详细信息，然后点击commit
     * 6.创建码云账号，最好以邮箱为用户名，
     * 7.创建仓库，将项目提交给码云的地址：https://gitee.com/rains2711/java02-20230320.git
     * -------------------------------
     * 在另一台电脑上：
     * 1.下载安装git
     * 2.选择你想要将项目下载到那个地址
     * 3.点击鼠标右键，选择git base here，输入git clone https://gitee.com/rains2711/java02-20230320.git
     * 4.按enter键，如果第一次操作，提示输入码云用户名和密码
     * --------------------------------------------------------------
     * 1.+ - * 、 % 算数运算符
     * 2.整数默认数据类型为int ，小数默认数据类型为double
     * 3.如果基本数据类型参与运算，则会将小的运算符转换为大的运算符
     * 4.字符串拼接的时候，如果后面是整数，直接将他拼接在一起
     * 5.如果由运算符，则先做运算，（从左到右 )
     * 6.数据类型转换：强制转换和隐式转换
     * 7.都可以理解为强制转换，只不过隐式转换是隐藏了转换类型，所以简称隐式转换
     * 8.赋值运算符：扩展运算符包含了隐式的强制转换
     * 9.关系运算符  比较运算符
     * 10.可能其他语言对于布尔来说，非零表示true，零表示false，Java没有这种说法
     * 11.短路与：遇false 则右边不执行，短路或，左边遇true，右边不执行
     * 12.运算符优先级
     *      1）短路与大于短路或
     *      2）三元运算符和赋值运算符和自增自减运算符从右往左计算
     *      3）括号里面先运算
     * 13.码云：每天晚上结束后上传码云，每天早上开始时更新码云
     *      建议：错误的代码不上上传（团队协作的时候）
     *      建议每天上传更新自己的代码
     *
     */
    /**
     * 2023-3-22 分支和循环
     * 1.判断两个数据是否相等，==用于基本数据类型，equals用于引用类型
     * 2.以后不允许字面量单独存在，必须写入变量
     * 3.java的特点：可维护性，低耦合高内聚
     * 4.对于暂时的技术阶段，不要使用else即可
     * 5.break只是跳出循环，只用于switch和for循环
     * 6.不建议大家省略大括号
     * 7.任务：
     *          *
     *         * *
     *        * * *
     *       * * * *
     *        * * *
     *         * *
     *          *
     * 8.do while一定会执行一次循环体语句
     * 9.break满足条件后，后面的所有语句（for循环里面）都不知晓
     * 10.任务：利用随机数，每隔6次显示一次豹子
     */
    /**
     * 2023-3-23 数组和二维数组
     * 1.if（）
     * 2.switch() 值可以是什么数据类型？能不能是变量？
     * 3.for（）  while 和  do while 的区别？
     * 4.随机数：Math 类进行封装
     *      [start,end)
     *      区间随机数 random.next(end-start)+start;
     * -----------------------------------------
     * 1.数组的定义
     * 2.数组的索引
     * 3.数组的长度
     * 4.数组的遍历
     * 5.数组的求和
     * 6.数组的取值
     * 7.数组的赋值
     * 8.代码上移/下移     ctrl+shift+up/down
     * 9.数组的静态定义和动态定义
     * 10.他们之间的区别？
     *      1）长度不同：  静态通过元素内容得到长度，动态直接定义长度
     *      2）内容不同  静态直接定义，动态为默认值
     * 11.内存图：
     * 12.异常：
     *      数组索引越界 ：ArrayIndexOutOfBoundsException
     *      空指针异常： NullPointerException
     *---------------------------------------------------------
     * 13.二维数组静态定义
     *      1）int[][] arr={
     *          {1,3},
     *          {2},
     *          null
     *      }
     *      2)遍历：双重for循环
     * 14.二维数组动态定义
     *      1）int[][] arr=new int[m][n];
     *      2)m代表二维数组的长度，n代表里面每一个数组元素的长度
     * 15.面试的时候，用到最多的是二维数组？算法：排序：冒泡
     *
     */
    /**
     * 2023-3-24 方法
     * 1.数组：
     *      1）数组的定义方式   2种，静态定义 ，动态定义
     *      2）区别？
     *          内容
     *          长度
     *      3）数组的遍历：取值和赋值
     *      4）将数组和求和，if else  for进行
     *      5）键盘录入  随机数填充
     * 2.二维数组：
     *      1）算法
     *      2）双重for循环  循环嵌套  ：九九乘法表
     *      任务：将九九乘法表放入二维数组：
     *--------------------------------------------------
     * 3.将代码放入一个方法里面，代码非常臃肿，不好维护
     * 4.如果将代码提取出去，则需要有一个名字，而且提取出去的目的：就是让更多的地方可以调用
     * 5.说明这个代码可以重用
     * 6.方法的提取：规则
     *      按照功能模块的不同进行分类
     * 7.一个完整的方法定义
     *      权限修饰符   特征修饰符  返回值的数据类型   方法名(参数的数据类型  参数名) 抛出异常{
     *          执行体代码
     *          return  返回值；
     *      }
     * 8.块  {} 起始也是方法
     * 9.方法名一定要见名知意：小驼峰命名
     * 10.一定要对方法写注释：无论你的方法名取得有多好
     * 11.建议以后不要在for循环里面直接写数字
     * 12.建议，以后方法里面不要出现固定的字符或者数字：
     * 13.F9，跳转到下一个断点，如果没有，则直接跳出程序
     * 14.以后定义方法的时候：建议方法带参数，带返回值
     * 15.方法里面固定的值 ：魔法值 ；以后如果要用魔法值，则创建枚举
     * 16.
     *      形参:在反法里面
     *      实参：调用方法传入的实际的值
     * 17.不定长数组 int... arr
     * 18.Java重载：方法名相同，参数类型和个数不同
     * 19.重载目的：好看好记
     * 20.重载暂时是指同一个类
     * 21:总结：
     *      1）方法的目的：提高复用率
     *      2）一个方法最好做一件事情
     *      3）多个方法不能互相影响
     *      4）重载：方法名相同，参数类型，个数不同，暂时只是在同一个类
     * 22.构造方法：和类名相同，主要目的就是为了得到对象:有返回值
     */
}
